package com.laozhao.snow;

import java.util.List;
import java.util.Map;

public interface Property {

	public static final String ATTRIBUTE_NODE_NAME = "property";
	
	public static final String ATTRIBUTE_PROPERTY_NAME = "name"; 
	public static final String ATTRIBUTE_PROPERTY_VALUE = "value";

	public static final String ELEMENT_PROPERTY_LIST = "list";
	public static final String ELEMENT_PROPERTY_PROPS = "props";

	public static final String ELEMENT_LIST_VALUE = "value"; 
	public static final String ELEMENT_PROPS_PROP = "prop";
	public static final String ATTRIBUTE_PROP_KEY = "key";

	/**
	 * set Property name
	 * @param Property name
	 */
	public void setName(String name);

	/**
	 * get Property name
	 * @return Property name
	 */
	public String getName();

	/**
	 * get Property value
	 * @return Property value
	 */
	public String getValue(String name );
	
	/**
	 * set Property value
	 * @param Property value
	 */
	public void setValue(String name);
	

	/**
	 * get Property value
	 * @return Property value
	 */
	public List<?> getList(String name );
	
	/**
	 * set Property value
	 * @param Property value
	 */
	public void setList(List<?> value);
	

	/**
	 * get Property value
	 * @return Property value
	 */
	public Map<String, ?> getProps(String name );
	
	/**
	 * set Property value
	 * @param Property value
	 */
	public void setProps(Map<String, ?> value);
}
